Here is an approximate equivalent of EFFECT in HyperTalk, so you'll understand what it is doing.
on effect what
put card field what of card "Effects card" into theSource
repeat with i is 1 to the number of lines in theSource
get line i of theSource
do it
end repeat
end effect
Actually, the XCMD does a bit more-- it ignores blank lines, and also removes leading spaces and checks for "--" before a lineΓÇö otherwise, Hypercard would generate an error message "Can't understand end of line."